package cn.net.cfss.fgbp.spi.manage.constant;


import cn.net.cfss.fgbp.base.constant.BaseEnum;
import cn.net.cfss.fgbp.base.vo.SysEnumVo;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * 是或否标记枚举
 */
public enum YesOrNoEnum implements BaseEnum<YesOrNoEnum , Integer> {
    NO(0, "否"),
    YES(1, "是");

    private Integer value;
    private String displayName;

    YesOrNoEnum(Integer value , String displayName){
        this.value = value;
        this.displayName = displayName;
    }

    @Override
    public Integer getValue() {
        return this.value;
    }

    @Override
    public String getDisplayName() {
        return this.displayName;
    }


    public static YesOrNoEnum getEnum(Integer value) {
        return enumMap.get(value);
    }

    private static Map<Integer, YesOrNoEnum> enumMap = new HashMap<Integer, YesOrNoEnum>();

    static {
        for (YesOrNoEnum en : YesOrNoEnum.values()) {
            enumMap.put(en.getValue(), en);
        }
    }

    public static List<SysEnumVo> getEnum() {
        List<SysEnumVo> list = new ArrayList();
        for (YesOrNoEnum en : YesOrNoEnum.values()) {
            SysEnumVo vo = new SysEnumVo();
            vo.setVal(en.getValue());
            vo.setDisplayName(en.getDisplayName());
            vo.setName(en.name());
            list.add(vo);
        }
        return list;
    }
}
